﻿namespace Ocelot.Admin.Api.Application
{
    public interface IGlobalConfigurationService
    {
        #region 查询

        /// <summary>
        /// 查询全局配置信息
        /// </summary>
        /// <returns></returns>
        Task<GlobalConfiguration> GetGlobalConfigurationAsync();

        #endregion

        #region 新增

        /// <summary>
        /// 新增全局配置信息
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        Task<int> InsertGlobalConfigurationAsync(InsertGlobalConfigurationRequest request);

        #endregion

        #region 编辑

        /// <summary>
        /// 更新全局配置信息
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        Task<string> UpdateGlobalConfigurationAsync(UpdateGlobalConfigurationRequest request);

        #endregion

        #region 删除

        /// <summary>
        /// 删除全局配置信息
        /// </summary>
        /// <param name="globalConfigurationId">全局配置Id</param>
        /// <returns></returns>
        Task<string> DeletGlobalConfigurationAsync(int globalConfigurationId);

        #endregion
    }
}